package accident_duty_enum

// 交通事故责任
type trafficAccidentDuty int

var TrafficAccidentDuty trafficAccidentDuty

// 当事车辆负主要责任
func (c *trafficAccidentDuty) MainDuty() int {
	return 1
}

// 当事车辆负同等责任
func (c *trafficAccidentDuty) EquivalentDuty() int {
	return 2
}

// 当事车辆负次要责任
func (c *trafficAccidentDuty) SecondaryDuty() int {
	return 3
}

// 当事车辆无责任
func (c *trafficAccidentDuty) NoDuty() int {
	return 4
}

func (c *trafficAccidentDuty) ToText(value int) string {
	switch value {

	case 1:
		return "当事车辆负主要责任"

	case 2:
		return "当事车辆负同等责任"

	case 3:
		return "当事车辆负次要责任"

	case 4:
		return "当事车辆无责任 "

	}
	return ""
}

func (c *trafficAccidentDuty) ToValue(text string) int {
	switch text {

	case "当事车辆负主要责任":
		return 1

	case "当事车辆负同等责任":
		return 2

	case "当事车辆负次要责任":
		return 3

	case "当事车辆无责任 ":
		return 4

	}
	return 0
}
